#include "processBar.h"
#include <string.h>
#include <unistd.h>


char bar[NUM];
char arr[]="|/-\\";
int len = sizeof(bar);
// v2: 是如何被调用的
void processbar(int rate)
{
    if(rate < 0 || rate > 100)  return;

    int sz=sizeof(arr);
    printf("[%-100s][%d%%][%c] \r",bar,rate,arr[rate%sz]);//没有\n,就没有立即刷新，因为显示器模式是行刷新；
    fflush(stdout);
    bar[rate++]=BODY;
    if(rate < TOP)  bar[rate]=RIGHT;
    else memset(bar,'\0',len);
}

//V1
//void processbar(int speed)
//{
//    char bar[NUM];
//    char arr[]={'/','|','\\','-'};
//    int sz=sizeof(arr);
//
//    memset(bar,'\0',sizeof(bar));
//
//    int cnt=0; 
//    while(cnt <= TOP)
//    {
//        printf("[%-100s][%d%%][%c] \r",bar,cnt,arr[cnt%sz]);
//       fflush(stdout);
//
//        bar[cnt++]=BODY;
//        if(cnt< TOP) 
//            bar[cnt]=RIGHT;
//       usleep(speed);
//    }
//    printf("\n");
//}
